Channel estimation for time division duplex communication systems

ABSTRACT

A single transmitter transmits K communication bursts in a shared spectrum in a time slot of a time division duplex communication system. Each burst has an associated midamble sequence, a receiver knowing the midamble sequences of the K bursts. The receiver receives a vector corresponding to the transmitted midamble sequences of the K communication bursts. A matrix having K right circulant matrix blocks is constructed based in part on the known K midamble sequences. The wireless channel between the transmitter and receiver is estimated based on in part the K block matrix and the received vector.

This application is a continuation of U.S. Patent Application No.09/755,400, filed on Jan. 5, 2001, which claims priority from U.S.Provisional Patent Application No. 60/175,167, filed on Jan. 7, 2000.

BACKGROUND

The invention generally relates to wireless communication systems. Inparticular, the invention relates to channel estimation in a wirelesscommunication system.

FIG. 1 is an illustration of a wireless communication system 10. Thecommunication system 10 has base stations 12 ₁ to 12 ₅ which communicatewith user equipments (UEs) 14 ₁ to 14 ₃. Each base station 12 ₁ has anassociated operational area where it communicates with UEs 14 ₁ to 14 ₃in its operational area.

In some communication systems, such as code division multiple access(CDMA) and time division duplex using code division multiple access(TDD/CDMA), multiple communications are sent over the same frequencyspectrum. These communications are typically differentiated by theirchip code sequences. To more efficiently use the frequency spectrum,TDD/CDMA communication systems use repeating frames divided into timeslots for communication. A communication sent in such a system will haveone or multiple associated chip codes and time slots assigned to itbased on the communication's bandwidth.

Since multiple communications may be sent in the same frequency spectrumand at the same time, a receiver in such a system must distinguishbetween the multiple communications. One approach to detecting suchsignals is single user detection. In single user detection, a receiverdetects only the communications from a desired transmitter using a codeassociated with the desired transmitter, and treats signals of othertransmitters as interference. Another approach is referred to as jointdetection. In joint detection, multiple communications are detectedsimultaneously.

To utilize these detection techniques, it is desirable to have anestimation of the wireless channel in which each communication travels.In a typical TDD system, the channel estimation is performed usingmidamble sequences in communication bursts.

A typical communication burst 16 has a midamble 20, a guard period 18and two data bursts 22, 24, as shown in FIG. 2. The midamble 20separates the two data bursts 22, 24 and the guard period 18 separatesthe communication bursts 16 to allow for the difference in arrival timesof bursts 16 transmitted from different transmitters. The two databursts 22, 24 contain the communication burst's data. The midamble 20contains a training sequence for use in channel estimation.

After a receiver receives a communication burst 16, it estimates thechannel using the received midamble sequence. When a receiver receivesmultiple bursts 16 in a time slot, it typically estimates the channelfor each burst 16. One approach for such channel estimation forcommunication bursts 16 sent through multiple channels is a SteinerChannel Estimator. Steiner Channel Estimation is typically used foruplink communications from multiple UEs, 14 ₁ to 14 ₃, where the channelestimator needs to estimate multiple channels.

In some situations, multiple bursts 16 experience the same wirelesschannel. One case is a high data rate service, such as a 2 megabits persecond (Mbps) service. In such a system, a transmitter may transmitmultiple bursts in a single time slot. Steiner estimation can be appliedin such a case by averaging the estimated channel responses from all thebursts 16. However, this approach has a high complexity. Accordingly, itis desirable to have alternate approaches to channel estimation.

SUMMARY

A single transmitter transmits K communication bursts in a sharedspectrum in a time slot of a time division duplex communication system.Each burst has an associated midamble sequence, a receiver knowing themidamble sequences of the K bursts. The receiver receives a vectorcorresponding to the transmitted midamble sequences of the Kcommunication bursts. A matrix having K right circulant matrix blocks isconstructed based in part on the known K midamble sequences. Thewireless channel between the transmitter and receiver is estimated basedon in part the K block matrix and the received vector.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a wireless communication system.

FIG. 2 is an illustration of a communication burst.

FIG. 3 is a simplified multiburst transmitter and receiver.

FIG. 4 is a flow chart of multiburst channel estimation.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 3 illustrates a simplified multicode transmitter 26 and receiver 28in a TDD/CDMA communication system. In a preferred application, such asa 2 Mbs downlink service, the receiver 28 is in a UE 141 and thetransmitter 26 is in a base station 12 ₁, although the receiver 28 andtransmitter 26 may be used in other applications.

The transmitter 26 sends data over a wireless radio channel 30. The datais sent in K communication bursts. Data generators 32 ₁ to 32 _(K) inthe transmitter 26 generate data to be communicated to the receiver 28.Modulation/spreading and training sequence insertion devices 34 ₁ to 34_(K) spread the data and make the spread reference data time-multiplexedwith a midamble training sequence in the appropriate assigned time slotand codes for spreading the data, producing the K communication bursts.Typical values of K for a base station 12 ₁ transmitting downlink burstsare from 1 to 16. The communication bursts are combined by a combiner 48and modulated by a modulator 36 to radio frequency (RF). An antenna 38radiates the RF signal through the wireless radio channel 30 to anantenna 40 of the receiver 28. The type of modulation used for thetransmitted communication can be any of those known to those skilled inthe art, such as binary phase shift keying (BPSK) or quadrature phaseshift keying (QPSK).

The antenna 40 of the receiver 28 receives various radio frequencysignals. The received signals are demodulated by a demodulator 42 toproduce a baseband signal. The baseband signal is processed, such as bya channel estimation device 44 and a data detection device 46, in thetime slot and with the appropriate codes assigned to the transmittedcommunication bursts. The data detection device 46 may be a multiuserdetector or a single user detector. The channel estimation device 44uses the midamble training sequence component in the baseband signal toprovide channel information, such as channel impulse responses. Thechannel information is used by the data detection device 46 to estimatethe transmitted data of the received communication bursts as hardsymbols.

To illustrate one implementation of multiburst channel estimation, thefollowing midamble type is used, although multiburst channel estimationis applicable to other midamble types. The K midamble codes, M ^((k))where k=1 . . . K, are derived as time shifted versions of a periodicsingle basic midamble code, m _(P) , of period P chips. The length ofeach midamble code is L_(m)=P+W−1. W is the length of the user channelimpulse response. Typical values for L_(m) are 256 and 512 chips. W isthe length of the user channel impulse response. Although the followingdiscussion is based on each burst having a different midamble code, somemidambles may have the same code. As, a result, the analysis is based onN midamble codes, N<K. Additionally, the system may have a maximumnumber of acceptable midamble codes N. The receiver 28 in such a systemmay estimate the channel for the N maximum number of codes, even if lessthan N codes are transmitted.

The elements of m _(P) take values from the integer set {1, −1}. Thesequence m _(P) is first converted to a complex sequence {tilde over(m)} _(P)[i]=j^(i)·m _(P) [i], where i=1 . . . P. The m are obtained bypicking K sub-sequences of length L_(m) from a 2P long sequence formedby concatenating two periods of {tilde over (m)} _(P). The i^(th)element of m ^((k)) is related to {tilde over (m)} _(P) by Equation 1.$\begin{matrix}\begin{matrix}{\underset{\_}{m_{i}^{(k)}} = {{\overset{\sim}{m}}_{P}\left\lbrack {{\left( {K - k} \right)W} + i} \right.}} & {{{for}\quad 1} \leq i \leq {P - {\left( {K - k} \right)W}}} \\{\quad{{= {{\overset{\sim}{m}}_{P}\left\lbrack {i - P + {\left( {K - k} \right)W}} \right\rbrack}},}} & {\quad{{{{for}\quad P} - {\left( {K - k} \right)W}} \leq i \leq {P + W - 1}}}\end{matrix} & {{Equation}\quad 1}\end{matrix}$Thus, the starting point of m ^((k)) , k=1 . . . K shifts to the rightby W chips as k increases from 1 to K.

The combined received midamble sequences are a superposition of the Kconvolutions. The k^(th) convolution represents the convolution of m^((k)) with {overscore (h^((k)))}. {overscore (h^((k)))} is the channelresponse of the k^(th) user. The preceding data field in the burstcorrupts the first (W−1) chips of the received midamble. Hence, for thepurpose of channel estimation, only the last P of L_(m) chips are usedto estimate the channel.

Multiburst channel estimation will be explained in conjunction with theflow chart of FIG. 4. To solve for the individual channel responses{overscore (h^((k)))}, Equation 2 is used. $\begin{matrix}{{\begin{bmatrix}m_{P} & \cdots & m_{{{({K - 1})}W} + 1} & m_{{({K - 1})}W} & \cdots & m_{{{({K - 2})}W} + 1} & \quad & m_{W} & \cdots & m_{1} \\m_{1} & \cdots & m_{{{({K - 1})}W} + 2} & m_{{{({K - 1})}W} + 1} & \cdots & m_{{{({K - 2})}W} + 2} & \quad & m_{W + 1} & \cdots & m_{2} \\m_{2} & \cdots & m_{{{({K - 1})}W} + 3} & m_{{{({K - 1})}W} + 2} & \cdots & m_{{{({K - 2})}W} + 3} & \cdots & m_{W + 2} & \cdots & m_{3} \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \quad & \vdots & \vdots & \vdots \\m_{{KW} - 1} & \vdots & m_{{({K - 1})}W} & m_{{{({K - 1})}W} - 1} & \cdots & m_{{({K - 2})}W} & \quad & m_{W - 1} & \quad & m_{P}\end{bmatrix} \times \begin{bmatrix}{\underset{\_}{h}}^{(1)} \\{\underset{\_}{h}}^{(2)} \\\quad \\\vdots \\{\underset{\_}{h}}^{(K)}\end{bmatrix}} = \begin{bmatrix}r_{W} \\r_{W + 1} \\r_{W + 2} \\\vdots \\r_{L_{m}}\end{bmatrix}} & {{Equation}\quad 2}\end{matrix}$r_(W) . . . r_(LM) are the received combined chips of the midamblesequences. The m values are the elements of m _(p) .

Equation 2 may also be rewritten in shorthand as Equation 3.$\begin{matrix}{{\sum\limits_{k - 1}^{K}\quad{M^{(k)}\overset{\_}{h^{(k)}}}} = \overset{\_}{r}} & {{Equation}\quad 3}\end{matrix}$Each M^((k)) is a KW-by-W matrix. {overscore (r)} is the receivedmidamble chip responses. When all the bursts travel through the samechannel, {overscore (h⁽¹⁾)} . . . {overscore (h^((k)))} can be replacedby {overscore (h)} as in Equation 4, 50. $\begin{matrix}{{\left\lbrack {\sum\limits_{k = 1}^{K}\quad M^{(k)}} \right\rbrack\overset{\_}{h}} = \overset{\_}{r}} & {{Equation}\quad 4}\end{matrix}$G is defined as per Equation 5.G =[M ⁽¹⁾ , . . . , M ^((k)) , . . . , M ^((K))[  Equation 5As a result, G is a KW-by-KW matrix. Since G is a right circulantmatrix, Equation 4 can be rewritten using K identical right circulantmatrix blocks B, as per Equation 6, 52. $\begin{matrix}{\left\lbrack {\sum\limits_{k = 1}^{K}\quad M^{(k)}} \right\rbrack = {\begin{bmatrix}B \\B \\\vdots \\B\end{bmatrix} = D}} & {{Equation}\quad 6}\end{matrix}$B is a W-by-W right circulant matrix. The number of B-blocks is K. UsingEquation 6, Equation 4 can be rewritten as Equation 7.D{overscore (h)}={overscore (r)}  Equation 7Equation 7 describes an over-determined system with dimensions KW-by-W.One approach to solve Equation 7 is a least squares solution, 54. Theleast squares solution of Equation 7 is given by Equation 8.{overscore (ĥ=(D ^(H) D)⁻¹ D ^(H) {overscore (r)}  Equation 8D^(H) is the hermitian of D.

Applying Equation 6 to Equation 8 results in Equation 9. $\begin{matrix}{\left( {D^{H}D} \right)^{- 1} = {\frac{1}{K}\left( {B^{H}B} \right)^{- 1}}} & {{Equation}\quad 9}\end{matrix}$The received vector {overscore (r)} of dimension KW can be decomposed asper Equation 10. $\begin{matrix}{\overset{\_}{r} = \begin{bmatrix}{\overset{\_}{r}}_{1} \\{\overset{\_}{r}}_{2} \\\vdots \\{\overset{\_}{r}}_{k}\end{bmatrix}} & {{Equation}\quad 10}\end{matrix}$The dimension of {overscore (r_(k))} is W. Substituting Equations 9 and10 into Equation 8, the least-squares solution for the channelcoefficients per Equation 11 results. $\begin{matrix}{\hat{\overset{\_}{h}} = {{\left( {B^{H}B} \right)^{- 1}{B^{H}\left( {\frac{1}{K}{\sum\limits_{k = 1}^{K}\quad{\overset{\_}{r}}_{k}}} \right)}} = {\left( {B^{H}B} \right)^{- 1}B^{H}{\overset{=}{r}}_{k}}}} & {{Equation}\quad 11}\end{matrix}${double overscore (r_(k))} represents the average of the segments of{overscore (r)}. Since B is a square matrix, Equation 11 becomesEquation 12.{overscore (ĥ=B ⁻¹ {double overscore (r _(k) )}  Equation 12Since B is a right circulant matrix and the inverse of a right circulantmatrix is also right circulant, the channel estimator can be implementedby a single cyclic correlator, or by a discrete Fourier transform (DFT)solution.

A W point DFT method is as follows. Since B is right circulant, Equation13 can be used.B=D _(W) ⁻¹·Λ_(C) ·D _(W)   Equation 13D_(W) is the W point DFT matrix as per Equation 14. $\begin{matrix}{D_{W} = \begin{bmatrix}{\overset{\sim}{W}}^{0} & {\overset{\sim}{W}}^{0} & {\overset{\sim}{W}}^{0} & {\overset{\sim}{W}}^{0} & \cdots & {\overset{\sim}{W}}^{0} \\{\overset{\sim}{W}}^{0} & {\overset{\sim}{W}}^{1} & {\overset{\sim}{W}}^{2} & {\overset{\sim}{W}}^{3} & \cdots & {\overset{\sim}{W}}^{({W - 1})} \\{\overset{\sim}{W}}^{0} & {\overset{\sim}{W}}^{2} & {\overset{\sim}{W}}^{4} & {\overset{\sim}{W}}^{6} & \cdots & {\overset{\sim}{W}}^{2{({W - 1})}} \\{\overset{\sim}{W}}^{0} & {\overset{\sim}{W}}^{3} & {\overset{\sim}{W}}^{6} & {\overset{\sim}{W}}^{9} & \cdots & {\overset{\sim}{W}}^{3{({W - 1})}} \\\vdots & \vdots & \vdots & \vdots & \cdots & \vdots \\{\overset{\sim}{W}}^{0} & {\overset{\sim}{W}}^{({W - 1})} & {\overset{\sim}{W}}^{2{({W - 1})}} & {\overset{\sim}{W}}^{3{({W - 1})}} & \cdots & {\overset{\sim}{W}}^{{({W - 1})}{({W - 1})}}\end{bmatrix}} & {{Equation}\quad 14}\end{matrix}$Λ_(C) is a diagonal matrix whose main diagonal is the DFT of the firstcolumn of B, as per Equation 15.Λ_(C)=diag(D _(W)(B(,1)))   Equation 15$\overset{\sim}{W} = {{\mathbb{e}}^{{- j}\frac{2\pi}{W}}.}$Thus, D_(W) is the DFT operator so that D_(W) x)} represents the W pointDFT of the vector x. By substituting Equation 13 into Equation 12 andusing ${D_{W}^{- 1} = \frac{D_{W}^{*}}{W}},$results in Equation 16. $\begin{matrix}{\overset{\_}{h} = {\left( {D_{W}^{*} \cdot \frac{1}{W} \cdot \Lambda_{C}^{- 1} \cdot D_{W}} \right)\overset{\_}{r}}} & {{Equation}\quad 16}\end{matrix}$D*_(W) is the element-by-element complex conjugate of D_(W).

Alternately, an equivalent form that expresses {overscore (h)} in termsof Λ_(R) instead of Λ_(C) can be derived. Λ_(R) is a diagonal matrixwhose main diagonal is the DFT of the first row of B per Equation 17.Λ_(R)=diag(D _(W)(B(1,:)))   Equation 17Since the transpose of B, B^(T), is also right circulant and that itsfirst column is the first row of B, B^(T) can be expressed by Equation18.B ^(T) =D _(W) ⁻¹ ·Λ _(R) ·D _(W)   Equation 18Using Equation 18 and that D_(W) ^(T=D) _(W), Λ_(R) ^(T)=Λ_(R) and thatfor any invertible matrix A, (A^(T))⁻¹=(A⁻¹)^(T), B can be expressed asper Equation 19.B=D _(W)·Λ_(R) ·D _(W)   Equation 19Substituting Equation 19 into Equation 12 and that$D_{W}^{- 1} = \frac{D_{W}^{*}}{W}$results in Equation 20. $\begin{matrix}{\overset{\_}{h} = {\left( {{D_{W} \cdot \Lambda_{R}^{- 1} \cdot \frac{1}{W}}D_{W}^{*}} \right)\overset{\_}{r}}} & {{Equation}\quad 20}\end{matrix}$Equations 16 or 20 can be used to solve for {overscore (h)}. Since allDFTs are of length W, the complexity in solving the equations isdramatically reduced.

An approach using a single cyclic correlator is as follows. Since B⁻¹ isthe inverse of a right circulant matrix, it can be written as Equation21. $\begin{matrix}{B^{- 1} = {T = \begin{bmatrix}T_{1} & T_{W} & \ldots & T_{3} & T_{2} \\T_{2} & T_{1} & \ldots & T_{4} & T_{3} \\\vdots & \vdots & \ldots & \vdots & \vdots \\T_{W - 1} & T_{W - 2} & \ldots & T_{1} & T_{W} \\T_{W} & T_{W - 1} & \ldots & T_{2} & T_{1}\end{bmatrix}}} & {{Equation}\quad 21}\end{matrix}$The first row of the matrix T is equal to the inverse DFT of the maindiagonal of Λ_(r) ⁻¹. Thus, the matrix T is completely determined byΛ_(R) ⁻¹.

The taps of the channel response {overscore (h)} are obtainedsuccessively by an inner product of successive rows of T with theaverage of W-length segments of the received vector {overscore (r)}. Thesuccessive rows of T are circularly right shifted versions of theprevious row. Using registers to generate the inner product, the firstregister holds the averaged segments of {overscore (r)}, and the secondregister is a shift register that holds the first row of the matrix T.The second register is circularly shifted at a certain clock rate. Ateach cycle of the clock, a new element of {overscore (h)} is determinedby the inner product of the vectors stored in the two registers. It isadvantageous to shift the first row of the matrix T rather than thereceived midambles. As a result, no extra storage is required for themidambles. The midambles continue to reside in the received buffer thatholds the entire burst. Since the correlator length is only W, asignificant reduction in complexity of estimating the channel isachieved.

1. A method for estimating a wireless channel in a time division duplexcommunication system using code division multiple access, the wirelesschannel existing between a single transmitter and a single receiver, thesingle transmitter transmitting K communication bursts in a sharedspectrum in a time slot, each burst having an associated midamblesequence, the receiver knowing the midamble sequences of the K bursts,the method comprising: receiving a vector corresponding to thetransmitted midamble sequences of the K communication bursts at thesingle receiver; constructing a matrix having K right circulant matrixblocks based in part on the known K midamble sequences; and estimatingthe wireless channel based on in part the K block matrix and thereceived vector.
 2. The method of claim 1 wherein the wireless channelestimating is performed using a least squares solution.
 3. The method ofclaim 2 wherein the least squares solution is implemented using a singlecyclic correlator.
 4. The method of claim 2 wherein the least squaressolution is implemented using a discrete Fourier transform solution. 5.A receiver for use in a wireless time division duplex communicationsystem using code division multiple access, a single transmitter in thesystem transmits K communication bursts in a shared spectrum in a timeslot, each burst having an associated midamble sequence, the receiverknowing the midamble sequences of the K bursts, the receiver comprising:an antenna for receiving the K communication bursts including a vectorcorresponding to the transmitted midamble sequences of the bursts; achannel estimator for constructing a matrix having K rightcirculant-matrix blocks based in part on the known K midamble sequencesand estimating the wireless channel between the receiver and the singletransmitter based on in part the K block matrix and the received vector;and a data detector for recovering data from the received communicationbursts using the estimated wireless channel.
 6. The receiver of claim 5wherein the data detector is a multiuser detector.
 7. The receiver ofclaim 5 wherein the wireless channel estimating is performed using aleast squares solution.
 8. The receiver of claim 7 wherein the leastsquares solution is implemented using a discrete Fourier transformsolution.
 9. The receiver of claim 7 wherein the least squares solutionis implemented using a single cyclic correlator.